/*
 * This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
 * You can obtain one at http://mozilla.org/MPL/2.0/.
 *
 * Portions created by the Initial Developer are
 * Copyright (C) 2012 the Initial Developer.
 * All Rights Reserved.
 *
 * The Original Code is "http://semi-frame.googlecode.com/svn/trenk/".
 *
 * The Initial Developer of the Original Code is the author below.
 */
/**
 * @file UtilBase.h
 * @brief Base of all utility classes.
 * @author mornongcloud
 * @date 2011/11/21
 */

#ifndef SEMIUTILUTILBASE_H_
#define SEMIUTILUTILBASE_H_

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <string.h>
#include <sstream>
#include <list>
#include <map>
#include <iostream>
#include <new>
#include <stdexcept> // standard exception
#include <errno.h>
#include <signal.h>
#include <limits.h>

namespace semi {
namespace util {

/// @brief Map for short.
typedef std::map<std::string, short> ShortMap;

/// @brief Map for int.
typedef std::map<std::string, long> IntMap;

/// @brief List for int.
typedef std::list<int> Ints;

/// @brief  Map for string.
typedef std::list<std::string> Strings;

/// @brief Map for index.
//typedef std::map<const std::string, uint> IndexMap;

/// @brief Map for string.
typedef std::map<std::string, std::string> StringMap;

}
}

#endif /* SEMIUTILUTILBASE_H_ */
